#include "ThreadCache.h"
#include <iostream>
#include "ConCurrent.h"

// #include <thread>

// using std::thread;


void testPageCache()
{
  ThreadCache tCache;
  void *ptr1 = tCache.alloc(1);
  void *ptr2 = tCache.alloc(2);
  void *ptr3 = tCache.alloc(8);
  void *ptr4 = tCache.alloc(3);

  tCache.dealloc(ptr1, 8);
  tCache.dealloc(ptr2, 8);
  tCache.dealloc(ptr3, 8);
  tCache.dealloc(ptr4, 8);
}

void testPageCacheDealloc()
{
  void *p1 = ConCurrentAlloc(3);
  void *p2 = ConCurrentAlloc(1);
  void *p3 = ConCurrentAlloc(8);

  ConCurrentDealloc(p1, 8);
  ConCurrentDealloc(p2, 8);
  ConCurrentDealloc(p3, 8);
}

int main()
{
  // threadCacheTest();
  // testPageCache();
  testPageCacheDealloc();

  cout << "success..." << endl;
}
